From 4a01e9a1accde9dc811eea750c6fc286ee06accf Mon Sep 17 00:00:00 2001 From: oliskoli Date: Sat, 18 Oct 2008 21:43:52 +0000 Subject: [PATCH] avltree: Fix "avltree_first". --- avltree.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/avltree.c b/avltree.c index 2726ef713..d6e7fb25e 100644 --- a/avltree.c +++ b/avltree.c @@ -195,7 +195,18 @@ avltree_find(const avltree_t *tree, const char *key, const void **data) const char * avltree_first(const avltree_t *tree, const void **data) { - return avltree_next(tree, NULL, data); + avlnode_t *node; + + AVLTREE_CHECK_HANDLE(tree); + + node = tree->root; + if (! node) return NULL; + + while (node->left) node = node->left; + avltree_save_key((avltree_t *)tree, node->key); + if (data) (*data) = node->data; + + return tree->key; } -- 2.30.2